// pages/auth/wxLogin.js
var api = require('./../../config/api.js');
var app = getApp();
var util = require('./../../utils/util.js');

Page({

  /**
   * 页面的初始数据
   */
  data: {

  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {
  
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
  
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {
  
  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {
  
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
  
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
  
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {
    return app.globalData.shareInfo;
  },

  bindGetUserInfo: function (e) {
    console.log(e.detail.userInfo);
    var that = this;
    // wx.showLoading({
    //   title: '获取信息中',
    // })

    wx.getUserProfile({
      desc: '获取头像和昵称', // 声明获取用户个人信息后的用途，后续会展示在弹窗中，请谨慎填写
      success: (res) => {
        that.wxLogin(res.userInfo);
      }
    })

    // var userInfo = e.detail.userInfo;
    // this.wxLogin(userInfo);
  },

  wxLogin: function (userInfo){
    var that = this;
    wx.login({
      success: function (res) {
        console.log(res);
        if (res.code) {
          that.userLogin(res.code, userInfo);
        } else {
          wx.hideLoading();
          console.log('登录失败！' + res.errMsg)
          wx.showToast({
            title: '登录失败！请重试！',
            icon: 'none',
            duration: 2000
          })
        }
      }
    });
  },

  userLogin: function (code, wxUserInfo){
    var that = this;
    var postData = {
      code: code,
      userInfo: JSON.stringify(wxUserInfo),
      headUrl: wxUserInfo.avatarUrl,
      name: wxUserInfo.nickName,
    };

    util.myRequest(api.WxLogin, postData, function(data){
      app.globalData.userInfo = data.data;
      // wx.navigateBack({
      //   delta: 1
      // })
      wx.redirectTo({
        url: './../userInfo/userInfo'
      })
    });
  },

})